﻿CREATE PROCEDURE [dbo].[Proveedores_DevolverPorCodigo]

@Codigo VARCHAR(20),
@IncluirImagen BIT

AS

IF(@IncluirImagen = 1)
BEGIN
	SELECT p.IdProveedor, 
		p.IdRubroProveedor, 
		p.IdTipoIva, 
		p.IdListaPrecioCompra, 
		p.Codigo, 
		p.Nombre, 
		p.LimiteDeuda, 
		p.Cuit, 
		p.Email, 
		p.SitioWeb, 
		p.Observaciones, 
		p.Imagen, 
		p.EstaEliminado
		FROM Proveedores p
		WHERE p.Codigo = @Codigo
END
ELSE
BEGIN
	SELECT p.IdProveedor, 
		p.IdRubroProveedor, 
		p.IdTipoIva, 
		p.IdListaPrecioCompra, 
		p.Codigo, 
		p.Nombre, 
		p.LimiteDeuda, 
		p.Cuit, 
		p.Email, 
		p.SitioWeb, 
		p.Observaciones, 
		CASE WHEN p.Imagen IS NULL
			THEN NULL
			ELSE CONVERT(IMAGE, 0x) END AS Imagen,
		p.EstaEliminado
		FROM Proveedores p
		WHERE p.Codigo = @Codigo
END

SELECT ptfp.IdProveedor,
	ptfp.IdTipoFormaPago
	FROM ProveedoresTiposFormasPagos ptfp
		INNER JOIN Proveedores p
			ON ptfp.IdProveedor = p.IdProveedor
	WHERE p.Codigo = @Codigo

SELECT dp.IdDomicilioProveedor, 
	dp.IdProveedor, 
	dp.IdTipoDomicilio, 
	dp.IdBarrio, 
	dp.Calle, 
	dp.Numero, 
	dp.Piso, 
	dp.Departamento
	FROM DomiciliosProveedores dp
		INNER JOIN Proveedores p
			ON dp.IdProveedor = p.IdProveedor
	WHERE p.Codigo = @Codigo

SELECT tp.IdTelefonoProveedor, 
	tp.IdTipoTelefono, 
	tp.IdProveedor, 
	tp.CodigoArea, 
	tp.Numero
	FROM TelefonosProveedores tp
		INNER JOIN Proveedores p
			ON tp.IdProveedor = p.IdProveedor
	WHERE p.Codigo = @Codigo

SELECT pcpp.IdProveedor,
	pcpp.IdCampoPersonalizadoProveedor,
	pcpp.Valor
	FROM ProveedoresCamposPersonalizadosProveedores pcpp
		INNER JOIN Proveedores p
			ON pcpp.IdProveedor = p.IdProveedor
	WHERE p.Codigo = @Codigo